// 7-27 简化的插入排序 (15分)
// 本题要求编写程序，将一个给定的整数插到原本有序的整数序列中，使结果序列仍然有序。

// 输入格式：
// 输入在第一行先给出非负整数N（<10）；第二行给出N个从小到大排好顺序的整数；第三行给出一个整数X。

// 输出格式：
// 在一行内输出将X插入后仍然从小到大有序的整数序列，每个数字后面有一个空格。
#include <stdio.h>
#define SIZE 10
int main()
{
    int arr[SIZE] = {0}, n, x, idx;
    scanf("%d", &n);
    for (int i = 0; i < n; i++) //读入n个整数
    {
        scanf("%d", &arr[i]);
    }
    scanf("%d", &x);
    for (idx = 0; idx < n && arr[idx] < x; idx++)
        ;                         //找到x应该插入的索引idx
    for (int j = n; j > idx; j--) // 将原本idx至n-1处的数整体后移一位
    {
        arr[j] = arr[j - 1];
    }
    arr[idx] = x;
    for (int i = 0; i <= n; i++)
    {
        printf("%d ", arr[i]);
    }
    return 0;
}
// 输入样例：
// 5
// 1 2 4 5 7
// 3

// 输出样例：
// 1 2 3 4 5 7